package com.sfdk.graphics.engine.api
{
import com.sfdk.graphics.engine.core.enums.RendererType;
import com.sfdk.utils.IntPoint;

import flash.events.IEventDispatcher;
import flash.geom.Rectangle;

public interface IMapObject extends IEventDispatcher
	{
		function get solLayers() : Vector.<ILayerInformation>;
		function get joueurLayers() : Vector.<ILayerInformation>;
		function get upperLayers() : Vector.<ILayerInformation>;
		function get walkableLayer() : IWalkableLayerInformation;
		
		function get rendererType() : RendererType
		
		function get tilesetList() : Vector.<ITileset>;
		function getTileset(tilesetID : int) : ITileset;
		function get tileSize() : int;
		function get width() : Number;
		function get height() : Number;
		function get widthInTile() : int;
		function get heightInTile() : int;
		function get totalWidthInTile() : int;
		function get totalHeightInTile() : int;
		
		function get lowerLimit() : int;
		function get upperLimit() : int;
		function get rightLimit() : int;
		function get leftLimit() : int;
		
		
		function cleanTilesets() : void;
        function getUpperLayerCutRect(tx : int, ty : int) : Vector.<IntPoint>
	}
}
